home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / suprabbs.zip / CLASS_2.TXT < prev    next >
Text File  |  1992-06-24  |  58KB  |  1,338 lines

  1.                    SUPRA TECHNICAL SUPPORT BULLETIN 
  2.                CLASS 2 FAX COMMANDS FOR SUPRA FAXMODEMS 
  3.                               6/19/92
  4.  
  5. Supra Corporation
  6. 7101 Supra Drive SW, Albany, OR  97321
  7. General (503) 967-2400 / Sales (503) 967-2410 / Fax (503) 967-2401
  8. Supra Tech Support  (503) 967-2440  8:00am - 5:00pm PST, M-F
  9.  
  10. Supra BBS........(503) 967-2444  24 Hours
  11. CompuServe.......76004,565
  12. BIX..............SupraCorp
  13. America Online...SupraCorp2
  14. GEnie............SupraTech
  15. AppleLink........D2456
  16. UseNet EMail.....supratech%supra.uucp@cs.orst.edu
  17.             .....supra!supratech@cs.orst.edu
  18.  
  19. SUPRA's DISCLAIMER:
  20.    The following information has been taken from Rockwell's RC144AC 
  21. manual. It has not been taken from the CCITT Class 2 documentation, 
  22. which is copyrighted by the CCITT.  This information is provided for 
  23. educational purposes only.  To fully understand this information 
  24. requires a through knowledge of the T.4 fax image and the T.30 fax 
  25. session protocol standards.  Due to the nature of this information, 
  26. Supra's engineers and technical support can not and will not provide any 
  27. help or support on this information.  While a majority of this 
  28. information is correct, neither Supra nor Rockwell implies or warranties 
  29. that the SupraFaxModem will work exactly as documented here. This 
  30. information is based on an early draft of Class 2, which has undergone 
  31. further revisions and changes by the CCITT TR29.2 committee.  We 
  32. STRONGLY urge anyone attempting to develop fax software to get the 
  33. required documentation from Global Engineering or the TIA.
  34.  
  35. SHORT HISTORY OF CLASS 1 AND 2
  36.   In 1988 the CCITT TR29.2 committee accepted the Class 1 standard for 
  37. communication between fax software and fax modems.  The committee also 
  38. voted on, but did not accept for various technical reasons, the Class 2 
  39. standard.  A year later, they had slightly revised the standard but 
  40. again did not accept it.  Software and hardware manufactures decided to 
  41. unofficially adopt this standard until the TR29.2 committee could 
  42. develop an acceptable standard.  Since so many companies have used the 
  43. unoffical standard, the TR29.2 committee has designated that when the 
  44. standard is offically adopted it will be known as Class 2.0.  Over the 
  45. last year or so, the TR29.2 committee has voted on several revisions to 
  46. the Class 2 standard.  Their last vote was early May '92.  A no vote for 
  47. technical reasons was entered.  The TR29.2 committee is now reviewing 
  48. the technical issues that were raised.  At this time, Supra has not 
  49. heard of a projected date for the next ballot.
  50.  
  51. WHAT IS THE DIFFERENCE BETWEEN CLASS 1 AND 2
  52.   Class 1 fax software handles all of the T.4 fax image and T.30 session 
  53. protocol information and timming.  Thus, the ability to communicate 
  54. properly with various fax machines is more a function of the software 
  55. than the fax modem.  Class 2 fax software generates a T.4  fax page 
  56. image and sends it to the fax modem a page at a time.  The fax modem 
  57. then handles the T.30 session protocol information and timming.  This 
  58. relieves the computer's cpu from some work.  The ability to communicate 
  59. properly with various fax machines is more a function of the fax modem 
  60. than the software.  However, to further complicate matters, class 2 fax 
  61. software can issue Class 1 commands and take over some of the duties of 
  62. the Class 2 fax modem.  
  63.  
  64.   When customers have a problem communicating correctly with a fax 
  65. machine/modem, it can be very difficult to determine which is at fault,
  66.  the software or the hardware.  Supra has collected numerous Class 1 and 
  67. 2 fax software for a variety of different computers.  When we receive a 
  68. report of a problem, we use these programs to determine if it is a 
  69. software or hardware problem.  If it is a hardware problem, we notify 
  70. Rockwell, otherwise we notify the software company.
  71.  
  72. BUG REPORTS
  73.   Supra is dedicated to making the best product for the best price.  If 
  74. you feel that you have found a bug, please fax or send a letter to the 
  75. attention of:
  76.  
  77.    SUPRA V32/BIS FAX BUG
  78.  
  79. Please fully describe the 'bug' (specific steps to generate it, phone 
  80. numbers to call, make and model of fax/modem, rev of our ROM (from I3 
  81. command) ), why you believe that it is a bug, what specific section of 
  82. Class 2 applies to this bug and how you would like the bug to be fixed.  
  83. Please remember that there are issues that have not been addressed or 
  84. settled by the TR29.2 committee in the Class 2 specifications. (i.e. how 
  85. the DCD and DTR lines are handled while in fax mode.)
  86.  
  87.  
  88. WHERE TO GET OFFICIAL FAX DOCUMENTATION
  89.  
  90.   Telecommunications Industry Association
  91.   1722 Eye St. NW
  92.   Suite 440
  93.   Washington, DC  20006
  94.  
  95. You need to ask for:
  96.  
  97.     Class 1 documentation - EIA/TIA-578
  98.     Class 2 documentation - Electronic Industries Association and 
  99. Telecommunications Industry Association TIA Project Number 2388, 
  100. Asynchronous Facsimile DCE Control Standard, Service Class2, TR-29.2 
  101. Committee Letter Ballot
  102.  
  103.   Global Engineering Documents                     
  104.   2805 McGaw Ave
  105.   Irvin, CA  92713 
  106.   800-854-7179
  107.   714-261-1455
  108.   714-261-7892 (Fax)     
  109.  
  110. You need to ask for:
  111.  
  112.     EIA/TIA-578 - Class 1 documentation
  113.     EIA/TIA-592 - Class 2 documentation
  114.     CCITT v7.3  - T.1 - T.90 standards, includes T.4 & T.30
  115.  
  116. (The cost for the above docs will run close to $200.  But Global will 
  117. also update you on any changes or additions to those standards you 
  118. purchase.)
  119.  
  120. Global Engineering will not have the Class 2 documentation until approx. 
  121. a month after the TR29.2 committee accepts it.  Most of those companies 
  122. which have developed Class 2 fax software either sit on the TR29.2 
  123. committee or know someone who does.  It may be possible to receive the 
  124. documentation from the TIA if you present a credible proposal.  Supra 
  125. has no knowledge of what this proposal should consist of or who you need 
  126. to talk to.
  127.  
  128.  
  129. 7.1  COMMAND SYNTAX AND GUIDELINES
  130.  
  131. 7.1.1 DTE COMMANDS
  132.  
  133. The ISO 646 character set (T.50 International Alphabet 5, American 
  134. Standard Code for Information Interchange) is used for the issuance of 
  135. commands and responses.  Only the low-order 7 bits of each character are 
  136. used for commands or parameters; the high order bit is ignored.  Upper 
  137. case characters are equivalent to lower case characters.
  138.  
  139. For Phase C data transmission or reception, all 8 bits are needed.
  140.  
  141. DTE COMMAND LINES
  142.  
  143. A command line is a string of characters sent from a DTE to the DCE 
  144. while the DCE is in a command state.  Command lines have a prefix, a 
  145. body, and a terminator.  The prefix consists of the ASCII characters 
  146. 'AT' (065, 084) or 'at' (097, 116).  The body is a string of commands 
  147. restricted to printable ASCII characters, (032-126).  Space characters 
  148. (ASCII 032) and control characters other than CR (013) and BS (010) in 
  149. the command string are ignored.  The default terminator is the ASCII 
  150. <CR> character.  Characters that precede the AT prefix are ignored.
  151.  
  152. BSIC COMMAND SYNTAX
  153.  
  154. Characters within the command line are parsed as commands with 
  155. associated parameter values.  The basic commands consist of single ASCII 
  156. characters, or single characters preceded by a prefix character (e.g., 
  157. '&'), followed by a decimal parameter.
  158.  
  159. Missing decimal parameters are evaluated as 0.
  160.  
  161. EXTENDED COMMAND SYNTAX
  162.  
  163. The facsimile commands use extended syntax.  They are preceded by the 
  164. '+F' characters, and they are terminated by the semicolon ';' character 
  165. (059) or by the <CR> that terminated the command line.
  166.  
  167.          AT+FAA=0         ;+FCR 1 <CR>
  168.  
  169. This command instructs the DCE to answer automatically a data or fax 
  170. call and also enables reception.
  171.  
  172.          AT+FCLASS=0 <CR>      for data mode
  173.          AT+FCLASS=1 <CR>      for Service Class 1 Fax
  174.          AT+FCLASS=2 <CR>      for Service Class 2 Fax
  175.  
  176. In Class 2, the DCE makes and terminates calls, manages the 
  177. communication session and negotiates (T.30 protocol) and transports the 
  178. image date to DTE.  The T.4 protocol management of image data, etc. is 
  179. done by DTE.
  180.  
  181. The response to 
  182.          
  183.          AT+FCLASS=0<CR>       in Data Mode
  184.  
  185. or
  186.  
  187.         AT+FCLASS=2<CR>       in Service Class 2 Fax
  188.          
  189. is
  190.        OK
  191.  
  192. The service class may be set by the DTE from the choices available using 
  193. the '+FCLASS=<VALUE>' command.
  194.  
  195. GENERAL RULES
  196.  
  197. 1.  +Fnnn commands must be entered completely otherwise an 
  198.     ERROR response is sent.
  199.  
  200. 2.  All response messages are preceded and followed by <CR><LF>. 
  201.     Multiple response commands, e.g., +FDIS:+FCSI: and +FDCS, will 
  202.     therefore appear to a have a blank line between them.
  203.  
  204. 3.  Fax Class 2 commands can be separated by the ";" character.  The ";" 
  205.     can be omitted if desired.  Note that non-data commands cannot be 
  206.     separated by ";" which is allowed as a dial modifier.
  207.  
  208. 4.  All class 2 commands are assumed to be the final command on a 
  209.     command line.  Additional characters will be ignored.
  210.  
  211. 5.  An ERROR message will be generated if any of the following 
  212.     conditions:
  213.  
  214.       a.  A class 1 command is received while in Class 2.
  215.  
  216.       b.  A Class 2 command is received while in Class 1.
  217.  
  218.       c.  A Class 1 or Class 2 action command is received while in data 
  219.           modem mode
  220.  
  221.       d.  A Class 2 read-only parameter is given the "=" form of a +F 
  222.           command (e.g., AT+FAXERR=5).
  223.  
  224.       e.  A class 2 action command is given the inappropriate "=" or 
  225.           "=?" (e.g., AT+FDR=?).
  226.  
  227. 7.1.2 SERIAL PORT SPEED AND FLOW CONTROL
  228.  
  229. During fax mode, the DTE-DCE port speed is 19200 bps.
  230.  
  231. The DCE provides a speed buffer of 1024 bytes and provides DC1/DC3 
  232. (XON/XOFF) or RTS/CTS method of controlling the data into the buffer.  
  233. This flow control is controlled by AT&K3 or AT&K4 command.
  234.  
  235. This method of data flow control is available only for DTE to DCE 
  236. direction of data.  There is no provision for data flow control from DCE 
  237. to DTE.
  238.  
  239. DATA STREAM TERMINATION
  240.  
  241. The DCE exchanges streams of data with the DTE while executing data 
  242. transfer commands.  These use data stream termination described in 
  243. Section 3.2/ISO 2111.
  244.  
  245. The ASCII <DLE> character (016) is used as a special character to shield 
  246. special characters.  The <DLE><ETX> character pair (<106><003>) is used 
  247. to mark the end of a stream.  The following patterns are used:
  248.  
  249.    any data....<DLE><ETX>       end of stream
  250.    any data....<DLE><DLE>       single <DLE> in data
  251.    any data....<DLE><any byte>  delete <DLE><any byte>
  252.  
  253. DTE to DCE STREAMS
  254.  
  255. The DCE filters the data stream from the DTE, and removes all character 
  256. pairs beginning with <DLE>.  The DCE recognizes <DLE><ETX> as the stream 
  257. terminator.  The DCE recognizes <DLE><DLE> and reinserts a single <DLE> 
  258. in its place.
  259.  
  260. The DTE must filter stream data to the DCE, and insert extra <DLE> 
  261. characters ahead of data.
  262.  
  263. DCE TO DTE STREAMS
  264.  
  265. The DTE must filter the data stream from the DCE, and remove all 
  266. character pairs beginning with <DLE>.  The DTE must recognize <DLE><ETX> 
  267. as the stream terminator.  The DTE must recognize <DLE><DLE> and 
  268. reinsert a single <DLE> in its place.
  269.  
  270. The DCE filters stream data to the DTE, and inserts extra <DLE> 
  271. characters ahead of data.
  272.  
  273. 7.1.3  AUTO ANSWER
  274.  
  275. The DCE can answer as a data DCE or as a fax DCE.  It can answer the 
  276. call adaptively, i.e. it can determine whether call is 'data' or 'fax'.  
  277. The +FAA parameter controls this feature.
  278.  
  279.      AT+FAA=1           ; Auto answer as a facsimile or a
  280.                         ; data modem depending on call
  281.  
  282.      CONNECT xxx        ; DCE status response if data call
  283.  
  284.      +FCON              ; DCE status response if fax call
  285.  
  286. 7.1.4  IDENTIFICATION OF T.30 OPTIONS
  287.  
  288. Group 3 devices negotiate session parameters in DIS, DCS and DTC frames. 
  289.  These parameters are defined in table 8.2.
  290.  
  291. 7.1.5  SESSION STATUS REPORTING
  292.  
  293. The DCE provides reports to the DTE on the status of a session.  The DCE 
  294. provides following status reports:
  295.  
  296. 1.  Connection and hang up status:
  297.  
  298.         +FCON
  299.  
  300.         +FHNG:<0-255>
  301.  
  302. 2.  Requested DIS session parameters +FDIS:<string> reports remote 
  303.     facsimile capabilities.
  304.  
  305.         Syntax:+FDIS:VR, BR, WD, LN, DF, EC, BF, ST
  306.  
  307. 3.  +FDCS:<string> reports the negotiated parameters
  308.  
  309. 4.  Phase C prompts:
  310.  
  311.         XON, XOFF, DC2
  312.  
  313. 5.  Phase C base status reports: depending upon copy quality and related 
  314.     end-of page status:
  315.  
  316.         +FPTS:<1-5>
  317.  
  318. 7.1.6  PROCEDURE INTERRRUPT NEGOTIATION
  319.  
  320. CCITT allows a station to request a procedure interruption at the end of 
  321. a page.  This request is passed between stations by the PIP, PIN, and 
  322. PRI-Q messages.
  323.  
  324.  
  325. TABLE 7-1. FAX CLASS 2 COMMANDS
  326. -----------------------------------------------------------
  327. |   Command        Function                               |
  328. |---------------------------------------------------------|
  329. |   SERVICE CLASS ID                                      |
  330. |---------------------------------------------------------|
  331. |   +FCLASS=       Service Class                          |
  332. |---------------------------------------------------------|
  333. |   CLASS 2 ACTION COMMANDS                               |
  334. |---------------------------------------------------------|
  335. |   D              Originate a call                       |
  336. |   A              Answer a call                          |
  337. |   +FDT=          Data Transmission                      |
  338. |   +FET=N         Transmit Page Punctuation              |
  339. |   +FDR           Begin or Continue Phase C Receive Data |
  340. |   +FK            Session Termination                    |
  341. |---------------------------------------------------------|
  342. |  CLASS 2 DCE RESPONSES                                  |
  343. |---------------------------------------------------------|
  344. |   +FCON          Facsimile Connection Response          |
  345. |   +FDCS:         Report Current Session                 |
  346. |   +FDIS:         Report Remote Identification           |
  347. |   +FCFR          Indicate Confirmation to Receive       |
  348. |   +FTSI:         Report the Transmit Station ID         |
  349. |   +FCSI:         Report the Called Station ID           |
  350. |   +FPTS:         Page Transfer Status                   |
  351. |   +FET:          Post Page Message Response             |
  352. |   +FHNG          Call Termination with Status           |
  353. |---------------------------------------------------------|
  354. |   CLASS 2 SESSION PARAMETERS                            |
  355. |---------------------------------------------------------|
  356. |   +FMFR?         Identify Manufacturer                  | 
  357. |   +FMDL?         Identify Model                         |
  358. |   +FREV?         Identify Revision                      |
  359. |   +FDCC=         DCE Capabilities Parameters            |
  360. |   +FDIS=         Current Sessions Parameters            |
  361. |   +FDCS=         Current Session Results                |
  362. |   +FLID=         Local ID String                        |
  363. |   +FCR           Capability to Receive                  |
  364. |   +FPTS=         Page Transfer Status                   |
  365. |   +FAA           Adaptive Answer                        |
  366. |   +FBUF?         Buffer Size (Read Only)                |
  367. |   +FPHCTO        Phase C Time Out                       |
  368. |   +FAXERR        Fax Error Value                        |
  369. |   +FBOR          Phase C Data Bit Order                 |
  370. |---------------------------------------------------------|
  371.  
  372. 7.2 SERVICE CLASS 2 IDENTIFICATION AND SELECTION
  373.  
  374. The fax class 2 commands are summarized in Table 7-1.
  375.  
  376. Three commands report identification and selection information.  Each of 
  377. these three commands cause the DCE to send a message to the DTE.  Each 
  378. message is 20 bytes (ASCII encoded) followed by the terminating 
  379. character (binary 0).
  380.  
  381. 7.2.1 +FMFR?, REQUEST MANUFACTURER IDENTIFICAITION
  382.  
  383. The +FMFR? command caused the DCE to send a message identifying the DCE 
  384. product manufacturer.  The default message is:
  385.  
  386.     ROCKWELL
  387.     OK
  388.  
  389. 7.2.2  +FMDL?, IDENTIFY PRODUCT MODEL
  390.  
  391. The +FMDL? command causes the DCE to send a message identifying the DCE 
  392. product model.  The default message is:
  393.  
  394.    V.32AC
  395.    OK
  396.  
  397. 7.2.3  +FREV?, IDENTIFY PRODUCT REVISION
  398.  
  399. The +FREV? command causes the DCE to send a message identifying the DCE 
  400. product model revision number.  The typical default message is:
  401.  
  402.     V0.200 TR14-JXXX-001
  403.     OK
  404.  
  405. 7.3  SERVICE CLASS 2 ACTION COMMANDS
  406.  
  407. These commands transfer data, and punctuate sessions.  They also release 
  408. specific T.30 messages.  All action commands must be the last command on 
  409. a command line.  This is indicated by the terminating <CR>.
  410.  
  411. All action commands initiate processes.  The modem will not accept other 
  412. commands from the DTE until the modem issues a final result code  (e.g. 
  413. OK, CONNECT).  The modem will abort the process if it receives any 
  414. character before the final result code is issued.
  415.  
  416. 7.3.1  ATD, ORIGINATE A CALL
  417.  
  418. Syntax:    ATD...<CR>
  419.  
  420. The DCE can support a DTE command to originate a call using the ATD 
  421. command (See Table 4-2).
  422.  
  423. If this command is unsuccessful, the DCE reports an appropriate failure 
  424. or error type result code such as NO CARRIER, NO DIALTONE or BUSY (see 
  425. Table 4-7).
  426.  
  427. If this call is successful, the typical DCE response is:
  428.  
  429.    ATDnn.nn         (go off-hook, dial, get CED)
  430.    +FCON            (DCE detects flags)
  431.    [+FCSI:<remote ID string>]
  432.    +FDCS:<T.30 subparameter string>
  433.    OK
  434.  
  435. The DCE dials, detects call progress and generates the CNG tone.  Then 
  436. it waits for a DIS frame.  On detection of the first Phase B preamble 
  437. (V.21 ch. 2 modulated by 300 bit/s HDLC flags) it reports the "+FCON" 
  438. message to the DTE.  The DCE then switches to 19.2K bps.
  439.  
  440. The DCE generates a DCS frame based on the received DIS frame and on the 
  441. previously set +FDIS parameter.  A +FDT command from the DTE releases 
  442. the DCE to transmit that DCS frame.
  443.  
  444. The DCE reports the initial received T.30 negotiation messages, 
  445. including the DIS frame and the optional CSI ID string.  The +FDIS: 
  446. report is followed by the OK final result code.
  447.  
  448. 7.3.2  ATA, ANSWER A CALL
  449.  
  450. The DCE can support a DTE command to answer an incoming call using the 
  451. ATA command (see Table 4-2).
  452.  
  453. The DTE may issue an Answer command in response to an incoming ring.
  454.  
  455. If the Answer command is unsuccessful, the DCE will report an 
  456. appropriate failure or error type result code, such as NO CARRIER (see 
  457. 4-7)
  458.  
  459. MANUAL CALL ANSWER
  460.  
  461. If this call is successful, the typical DCE response (answer and 
  462. receive) is:
  463.  
  464.   +FCON
  465.   [+FTSI:<remote ID string>]
  466.   +FDCS: <T.30 subparameter string>
  467.   OK
  468.   (DTE should issue +FDR command here)
  469.  
  470. On receipt of an Answer command from the DTE, the DCE answer and 
  471. generates the CED tone.  The DCE then generates a DIS frame (derived 
  472. from the +FDIS parameter) and hunts for the first T.30 negotiation 
  473. frames.  On detection of the first Phase B preamble (V.21 ch 2 modulated 
  474. by 300 bit/s HDLC flags), it reports the "+FCON" message to the DTE.
  475.  
  476. The DTE should report the initial received T.30 negotiation messages, 
  477. including the DCS frame.  The +FCS: report will be followed by the OK 
  478. final result code.
  479.  
  480. AUTOMATIC ANSWER
  481.  
  482. The modem provides for automatic answering of incoming calls.  If 
  483. configured for automatic answer, the modem answers and incoming call in 
  484. compliance with T.30 and reports the same messages as described for 
  485. manual answer.
  486.  
  487. CONNECTIONS AS A DATA MODEM
  488.  
  489. If configured to do so by the +FAA parameter, the DCE will adaptively 
  490. answer as a facsimile DCE or as a data DCE.  If the DCE answers as a 
  491. facsimile DCE or as a data DCE.  If the DCE answers as a data DCE, it 
  492. resets the +FCLASS parameter to 0 and issues the appropriate final 
  493. result code (e.g. CONNECT or NO CARRIER) to the DTE.
  494.  
  495. 7.3.3  +FDT, DATA TRANSMISSION
  496.  
  497. Syntax: +FDT<CR>
  498.  
  499. The +FDT command prefixes Phase C data transmission.  When the DCE is 
  500. ready to accept Phase C data, it issues the negotiation responses and 
  501. the CONNECT result code to the DTE.
  502.  
  503. In Phase B, the +FDT command releases the DCE to proceed with 
  504. negotiation, and releases the DCS message to the remote station.  In 
  505. Phase C, the +FDT command resumes transmission after the end of a prior 
  506. transmit data stream.
  507.  
  508. INITIATE PAGE TRANSMISSION
  509.  
  510. Phase B DCE polled response:
  511.  
  512.   [+FCSI:<remote ID string>]                   ; If new CSI received
  513.   [+FDIS:<subparameters from remote station>]  ; If new DIS received
  514.   +FDCS:<T.30 subparameter string>
  515.   CONNECT
  516.   <XON>                                        ; When ready for data
  517.  
  518. After placing a call, or after finishing a document exchange, the DTE 
  519. may command the DCE to re-enter T.30 Phase B to attempt to negotiate a 
  520. document transmission.
  521.  
  522. CONTINUE A PAGE
  523.  
  524.    CONNECT
  525.    <XON>
  526.  
  527. The DTE may issue more than one +FDT command for a given page, so that 
  528. different files may be concatenated together.  These files must have the 
  529. same format.
  530.  
  531. PHASE C DATA FRAMING
  532.  
  533. Phase C data must be presented to the DCE in stream mode.  The DCE 
  534. expects Phase C data to follow until it detects <DLE><ETX> termination 
  535. characters.  The DCE will filter the stream as described in Section 
  536. 7.1.2
  537.  
  538. The DCE will acknowledge the end of the data by returning the OK result 
  539. code to the DTE.
  540.  
  541. If there is data underrun before the next +FDT or +FET= command, the DCE 
  542. will zero-fill pad as per T.4 until the  Phase C timeout (+FPHCTO) is 
  543. reached, or until more data is received.  The DCE appends an RTC pattern 
  544. to the transmit data after an +FET= command is received from the DTE.
  545.  
  546. PHASE C DATA FORMAT
  547.  
  548. The Phase C data will be of the format specified by the negotiated T.30 
  549. DCS frame.  The +FDCS <string> response is defined in section 7.4.2.  
  550. The subparameter values are described in table 7.2.
  551.  
  552. The DCE will use the negotiated minimum Scan Time parameter from the DCS 
  553. frame , and insert sufficient fill bits to pad each line to the minimum 
  554. scan time.  This is reported in the +FDCS:ST subparameter.
  555.  
  556. If the DCE finds more than one consecutive EOL in Phase C data (e.g. 
  557. RTC), it will send only one EOL.
  558.  
  559. Note 1:  Phase C data must conform to T.4 specifications
  560.  
  561. Note 2:  The DTE need not include a final RTC, since the DCE will append 
  562.          an RTC in response to an FET= command
  563.  
  564. Note 3:  Some facsimile machines may treat two EOLs as an RTC
  565.  
  566. <CAN>, ESCAPE FROM TRANSMISSION
  567.  
  568. The DCE may request the DTE to halt Phase C transmission, by sending an 
  569. cancel <CAN> character (024) to the DTE.  In this case, the DTE should 
  570. terminate Phase C transmission, issue <CAN>, and wait for the OK 
  571. response code from the DCE.
  572.  
  573. Table 7-2  T.30 Session Subparameter Codes
  574.  
  575. |-----------------------------------------------------------------|
  576. |  Label |  Function     |  Value  |  Description                 |
  577. |--------|---------------|---------|------------------------------|
  578. |  VR    |  Vertical     |   0     |  Normal, 98 lpi              |
  579. |        |  resolution   |   1     |  Fine, 196 lpi               |
  580. |--------|---------------|---------|------------------------------|
  581. |  BR    |  Bit Rate     |   0     |  2400 bit/s V.27 ter         |
  582. |        |               |   1     |  4800 bit/s V.27 ter         |
  583. |        |  (See note 1) |   2     |  7200 bit/s V.29 or v.17     |
  584. |        |               |   3     |  9600 bit/s V.29 or v.17     |
  585. |        |               | **4     |  12000 bit/s V.33 or v.17    |
  586. |        |               | **5     |  14400 bit/s V.33 or v.17    |
  587. |--------|---------------|---------|------------------------------|
  588. |  WD    | Page Width    |   0     |  1728 pixels in 215 mm       |
  589. |        |               |   1     |  2048 pixels in 255 mm       |
  590. |        |               |   2     |  2432 pixels in 303 mm       |
  591. |        |               |  *3     |  1216 pixels in 151 mm       |
  592. |        |               |  *4     |   864 pixels in 107 mm       |
  593. |--------|---------------|---------|------------------------------|
  594. |  LN    |  Page Length  |   0     |  A4, 297 mm                  |
  595. |        |               |  *1     |  B4, 364 mm                  |
  596. |        |               |  *2     |  unlimited length            |
  597. |--------|---------------|---------|------------------------------|
  598. |  DF    |  Data         |   0     |  1-D modified Huffman        |
  599. |        |  Compression  |   1     |  2-D modified Read           |
  600. |        |  Format       |  *2     |  2-D uncompressed mode       |
  601. |        |               |  *3     |  2-D modified Read           |
  602. |--------|---------------|---------|------------------------------|
  603. |  EC    |  Error        |   0     |  Disable ECM                 |
  604. |        |  Correction   |  *1     |  Enable ECM,64 bytes/frame   |
  605. |        |  (Annex       |  *2     |  Enable ECM,256 bytes/frame  |
  606. |        |   A/T.30)     |         |                              |
  607. |        |  (See Note 2) |         |                              |
  608. |--------|---------------|---------|------------------------------|
  609. |  BF    |  Binary File  |   0     |  Disable BFT                 |
  610. |        |  Transfer     |  *1     |  Enable BFT                  |
  611. |        |  (See Note 3) |         |                              |
  612. |--------|---------------|---------|------------------------------|
  613. |  ST    |  Scan Time/   |         |  VR=normal   VR=fine         |
  614. |        |  Line         |   0     |    0 ms        0 ms          |
  615. |        |               |   1     |    5 ms        5 ms          |
  616. |        |               |   2     |    10 ms       5 ms          |
  617. |        |               |   3     |    10 ms       10 ms         |
  618. |        |               |   4     |    20 ms       10 ms         |
  619. |        |               |   5     |    20 ms       20 ms         |
  620. |        |               |   6     |    40 ms       20 ms         |
  621. |        |               |   7     |    40 ms       40 ms         |
  622. |--------|---------------|---------|------------------------------|
  623. |  NOTES: 1: CCITT T.30 does not provide for the answering        |
  624. |            station to specify all speeds exactly using the DIS  |
  625. |            frame.  Implementation of some BR codes (e.g.code 2) |
  626. |            by an answering DCE is manufacturer specific.        |
  627. |                                                                 |
  628. |                                                                 |
  629. |         * =Not supported                                        |
  630. |        ** =RC144AC only                                         |
  631. |                                                                 |
  632. |         2: ECM has been implemented in Supra's version 1.200C.  |
  633. |            ECM transmit works correctly, and ECM receive works, |
  634. |            but does not tell the transmitting machine that the  |
  635. |            fax was received correctly.                          |
  636. |                                                                 |
  637. |        3:  BFT has been implemented in Supra's version 1.200C.  |
  638. |            BFT transmit works correctly, and BFT receive works, |
  639. |            but does not tell the transmitting machine that the  |
  640. |            file was received correctly.                         |
  641. |                                                                 |
  642. |-----------------------------------------------------------------|
  643.  
  644.  
  645. 7.3.4  +FET=, TRANSMIT PAGE PUNCTUATION
  646.  
  647. Syntax:   +FET=<ppm>[,<pc>,<bc>,<fc>]
  648.  
  649. DCE response:
  650.   +FPTS:<ppr>    ; when receive from remote OK
  651.  
  652. This command is used to punctuate page and document transmission after 
  653. one or more +FDT commands.  This command generates T.30 Post Page 
  654. Messages selected by the <ppm> code (Table 7-3)
  655.  
  656. The +FET=<ppm> command indicates that the current page is complete; no 
  657. more data will be appended to it.  The value indicates if there are any 
  658. additional pages are to be sent and, if so, whether there is a change in 
  659. any of the document parameters.
  660.  
  661. The DTE can command the DCE to generate PRI-Q messages with the 
  662. +FET=<ppm> command using ppm codes 4-6 (see Table 7-3)
  663.  
  664. This command must be sent within the time out specified by +FPHCTO after 
  665. sending Phase C data, or else the DCE will end the page and document 
  666. transmission.  If the Phase C timeout is reached, the DCE sends an EOP 
  667. post page message and terminates the session
  668.  
  669. The remote facsimile station should respond to the post page message 
  670. with a post page response.  The DCE will report this using the 
  671. +FPTS:<ppr> response (Table 7-4)
  672.  
  673. END A PAGE
  674.  
  675. The +FET= command causes the DCE to append an ETC (6 EOL) pattern as 
  676. needed and enter Phase D by sending the selected T.30 Post Page message.
  677.  
  678. The +FET=1 (EOM) command signals the remote station that the next 
  679. document will have a new DCS negotiated; this causes the session to re-
  680. enter Phase B.
  681.  
  682. 7.3.5  +FDR, BEGIN OR CONTINUE PHASE C RECEIVE DATA
  683.  
  684. Syntax:   +FDR<CR>
  685.  
  686. Default value:  3 seconds in some places
  687.  
  688. The +FDR command initiates transition to Phase C data reception.  This 
  689. can occur after answering, dialing, a document is received, or a page is 
  690. received.
  691.  
  692. The DCE reports the negotiated T.30 parameters, with the remote ID 
  693. information if available.  When the DCE is ready to commence data 
  694. transfer, it issues a CONNECT response code.  If the DCE cannot resume 
  695. data transfer because there is no more data, it responds OK.  When the 
  696. DTE is ready to accept data, it issues an <DC2> character (018) to the 
  697. DCE.
  698.  
  699. If the DTE issues an <XOFF> character to the DCE for flow control, the 
  700. DCE signals the DTE when its buffers are empty by sending a <DLE><DC2> 
  701. (<016><018>) character pair.
  702.  
  703. When the DCE delivers that last byte of a page, the DCE reports the Page 
  704. Transfer Status via the +FPTS:<ppr> response (Table 7-4).
  705.  
  706. After a Page Transfer Status Report, the DCE reports the post page 
  707. message from the remote facsimile station via the +FET:<ppm> response 
  708. (Table 7-3) which signals the intentions of the remote station.
  709.  
  710.  
  711. Table 7-3.  T.30 Post Page Message Codes
  712.  
  713. |-----------------------------------------------------------------|
  714. |  ppm    |                 |                                     |
  715. |  Code   |  Mnemonic       |  Description                        |
  716. |---------|-----------------|-------------------------------------|
  717. |    1    |  [PPS]-MPS      |  Another page next, same document   |
  718. |    2    |  [PPS]-EOM      |  Another page next                  |
  719. |    3    |  [PPS]-EOP      |  no more pages or documents         |
  720. |    4    |  [PPS-]PRI-MPS  |  Another page, procedure interrupt  |
  721. |    5    |  [PPS-]PRI-EOM  |  Another doc, procedure interrupt   |
  722. |    6    |  [PPS-]PRI-EOP  |  All done, procedure interrupt      |
  723. |    7    |  CTC            |  Continue to correct                |
  724. |   8-15  |  EOR-           |  End of Retransmission (8)+         |
  725. |  =8+ppm |                 |  Post Page Message (ppm code)       |
  726. |-----------------------------------------------------------------|
  727.  
  728. Table 7-4.  T.30 Post Page Response Message Codes
  729.  
  730. |-----------------------------------------------------------------|
  731. |  ppr    |                 |                                     |
  732. |  Code   |  Mnemonic       |  Description                        |
  733. |---------|-----------------|-------------------------------------|
  734. |   0     |  PPR            |  Partial page errors                |
  735. |   1     |  MCF            |  Page Good                          |
  736. |   2     |  RTN            |  Page bad, retrain requested        |
  737. |   3     |  RTP            |  Page good, retrain requested       |
  738. |   4     |  PIN            |  Page bad, interrupt requested      |
  739. |   5     |  PIP            |  Page good, interrupt requested     |
  740. |-----------------------------------------------------------------|
  741.  
  742. The DCE holds the post page response message to the remote facsimile 
  743. station (MCF, etc.), represented in the +FPTS parameter until the next 
  744. +FDR command.  The DTE may modify the +FPTS parameter before issuing the 
  745. +FDR command which releases that message.  The DTE must issue a +FDR 
  746. command to release Post Page Messages.
  747.  
  748. INITIATE DOCUMENT RECEPTION
  749.  
  750. The +FDR command may be issued in Phase B after an answer command, or in 
  751. Phase B after a pervious document.
  752.  
  753. The DCE response in stream mode is:
  754.  
  755.    +FCR             ; when CFR sent
  756.    [+FTSI:<remote ID string>]  ; if new TSI received
  757.    +FDCS:<T.30 subparameter string>]  ; if new DCS
  758.    CONNECT
  759.    (<DC2> needed from DTE here)
  760.    <Phase C data stream>
  761.    <DLE><ETX>
  762.    +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  763.    +FET:<ppm>
  764.    OK
  765.    (DTE must issue +FDR command to release post page response)
  766.  
  767. CONTINUE DOCUMENT RECEPTION
  768.  
  769. The DTE may issue a +FDR command in Phase D, which releases the post 
  770. page message, and indicates readiness to receive another page after 
  771. receipt of a Multipage (+FET:0) or PPS-NULL (+FET:3) message.  The DCE 
  772. response will be:
  773.  
  774.    CONNECT
  775.    (<DC2> needed from DTE here)
  776.    <Phase C data stream>
  777.    <DLE><ETX>
  778.    +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  779.    +FET:<ppm>
  780.    OK
  781.    (DTE must issue +FDR command to release post page response.
  782. If done receiving:
  783.    +FHNG:<hangup cause code>
  784.    OK
  785.  
  786.    Continue page reception
  787.  
  788. PHASE C DATA FRAMING
  789.  
  790. Phase C data may be presented to the DTE in stream mode.  The DCE will 
  791. transfer a stream of data to the DTE, followed by the <DLE><ETX> stream 
  792. termination characters.  The DCE will filter the stream as described in 
  793. 7.1.2.
  794.  
  795. PHASE C DATA FORMAT
  796.  
  797. The received data format is negotiated under T.30 reported by the 
  798. +FDCS:VR,BR,WD,LN,DF,EC,BF,ST response.
  799.  
  800. The DCE will delete the terminating RTC (6 EOLs) patterns.  The DCE may 
  801. strip zero fill bits from the data, to minimize storage needs.
  802.  
  803. <CAN>, ESCAPE FROM RECEPTION
  804.  
  805. From the +FDR command until the end of Phase D Date, the DCE is in a 
  806. data transfer state, and will not respond to DTE command characters.  
  807. The DCE will respond to three ASCII control characters, <DC1 (017) and 
  808. <DC3> (019) flow control characters, and cancel <CAN> (024).
  809.  
  810. Upon receipt of the <CAN> character, the DCE will terminate the 
  811. reporting of received data by sending trailing <DLE><ETX> characters to 
  812. the DTE, and will then execute an implied +FK command in order to 
  813. conduct an orderly disconnection.
  814.  
  815. 7.3.6  +FK, SESSION TERMINATION
  816.  
  817. Syntax:  +FK
  818.  
  819. The +FK command causes the DCE to terminate the session in an orderly 
  820. manner.  In particular, the DCE will send a DCN message at the next 
  821. opportunity and hang up.  At the end of the termination process, the DCE 
  822. will report the +FHNG response with result code (Table 7-5).
  823.  
  824. This operation can be invoked by using the cancel <CAN> character during 
  825. Phase C data reception (see prior section).
  826.  
  827. The DCE will wait until the current page completes, unless the reception 
  828. is of unlimited length; in that case, the DCE may halt reception and 
  829. terminate the session at any time.
  830.  
  831. 7.4  SERVICE CLASS 2 DCE RESPONSES
  832.  
  833. The DCE sends information responses to the DTE as a facsimile session 
  834. proceeds.  They indicate the state of the facsimile session and convey 
  835. need information.  These messages are solicited messages generated in 
  836. execution of DTE action commands described in section 7.3.
  837.  
  838. The DCE precedes and follows the following information responses with 
  839. <CR><LF>.
  840.  
  841. The DCE provides the on-line status of several session parameters when 
  842. they are available during T.30 handshaking.  These include the remote ID 
  843. string and the DIS/DCS parameters.  These responses report the T.30 
  844. session parameter frames.  The subparameters are described in Table 7-2.
  845.  
  846. 7.4.1  +FCON, FACSIMILE CONNECTION RESPONSE
  847.  
  848. +FCON indicates connection with a fax machine.  It is released by 
  849. detection of HDLC flags in the first received frame +FCON is generated 
  850. in response to an Originate or Answer command.
  851.  
  852. 7.4.2  +FDCS:, REPORT CURRENT SESSION CAPABILITIES
  853.  
  854. Syntax:   +FDCS:VR,BR,WD,LN,DF,EC,BF,ST
  855.  
  856. +FDCS:<string> reports the negotiated parameters.  Phase C data will be 
  857. formatted as described by the subparameters.  This message may be 
  858. generated in execution of +FDT or +FDR commands before the CONNECT 
  859. result code if new DCS frames are generated of received.  (See Table 7-
  860. 2.)
  861.  
  862. 7.4.3  +FDIS:, REPORT REMOTE STATION CAPABILITIES
  863.  
  864. Syntax:   +FDIS:VR,BR,WD,LN,DF,EC,BF,ST
  865.  
  866. +FDIS:<string> reports remote facsimile station capabilities and 
  867. intentions.  The parameters are provided in ASCII notation.  (See Table 
  868. 7-2.)
  869.  
  870. This message is generated in execution of Originate, Answer, +FDT, or 
  871. +FDR commands.
  872.  
  873. 7.4.4  +FCFR, INDICATE CONFIRMATION TO RECEIVE
  874.  
  875. Syntax:  +FCFR
  876.  
  877. The DCE sends a +FCFR response to the DTE upon reception of an 
  878. acceptable TCF training burst and a valid DCS signal from the remote 
  879. machine.  This indicates that the DCE will receive Phase C data after 
  880. the remote station receives the local DCE's CFR message.  The +FCFR 
  881. message is generated in execution of a +FDR command.
  882.  
  883. 7.4.5  +FTSI:, REPORT THE TRANSMIT STATION ID
  884.  
  885. Syntax:  +FTSI:"<TSI ID string>" Transmit Station ID
  886.  
  887. This response reports the received transmit station ID string, if any. 
  888.  This message is generated in execution of Originate, Answer, +FDT, or 
  889. +FDR commands.
  890.  
  891. 7.4.6  +FCSI:, REPORT THE CALLED STATION ID
  892.  
  893. Syntax:   +FCSI:"<CSI ID string>" Called Station ID
  894.  
  895. This response reports the received called station ID string, if any.  
  896. This message is generated in execution of Originate, Answer, +FDT, or 
  897. +FDA commands.
  898.  
  899. 7.4.7  +FPTS:, RECEIVE PAGE TRANSFER STATUS
  900.  
  901. Syntax:  +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  902.  
  903. The +FPTS:<ppr> is generated by the DCE at the end of Phase C data 
  904. reception in execution of a +FDR command.
  905.  
  906. The <ppr> is generated by the DCE; it depends on the DCE capabilities at 
  907. T.4 error checking.  See Table 7-4 for <ppr> values.
  908.  
  909. The receiving DCE will count the lines and may optionally generate bad 
  910. line counts.  These values are:
  911.  
  912.     <lc> = line count
  913.     <blc> = bad line count
  914.     <cblc> = <consecutive bad line count
  915.  
  916. A receiving DTE may inspect <ppr> and write a modified value into the +FPTS parameter.  The DCE will hold the corresponding Post Page Response message until released by a +FDR command from the DTE.
  917.  
  918. 7.4.8  +FET:, POST PAGE MESSAGE RESPONSE
  919.  
  920. Syntax:   +FET:<ppm>
  921.  
  922. The +FET:<post page message> response is generated by a receiving DCE 
  923. after DCE after the end of Phase C reception on receipt of the post-page 
  924. message from the transmitting station.  The +GET:<ppm> response is 
  925. generated in execution of a +FDR command.  The <ppm> codes respond to 
  926. the T.30 pst page messages (Table 7-3)
  927.  
  928. 7.4.9  +FPTS:, TRANSMIT PAGE TRANSFER STATUS
  929.  
  930. Syntax:  +FPTS:<ppr>
  931.  
  932. The +FPTS: response reports a <ppr> number representing the copy quality 
  933. and related post page message responses received from the remote DCE.  
  934. The set of valid <ppr> values are defined in Table 7-4.
  935.  
  936. The +FPTS:<ppr> response is generated in execution of a +FET=<ppm> 
  937. command.
  938.  
  939. 7.4.10  +FHNG:, CALL TERMINATION WITH STATUS
  940.  
  941. Syntax:  +FHNG:<hangup status code>
  942.  
  943. +FHNG indicates that the call has been terminated.  The hangup cause is 
  944. reported and stored in the +FAXERR parameter for later inspection.  The 
  945. <hangup status code> values are described in Table 7-5.
  946.  
  947. +FHNG:<hsc> is a possible intermediate result code to any DTE action 
  948. command described in Section 7.3.  It is always followed by the OK final 
  949. result code.
  950.  
  951. Upon termination of a call, the DCE determines the cause of termination 
  952. and reports it as part of the FHNG:<hsc> response.  It also stores this 
  953. <hsc> code in the +FAXERR parameter for later inspection.
  954.  
  955. The hangup values are organized according to the phases of the facsimile 
  956. transaction as defined by T.30.  A COMREC error or RSPREC error 
  957. indicates that one of two events occurred.  1) a DCN (disconnect) signal 
  958. was received, or 2) an FCS error was detected and the incoming signal 
  959. was still present after 3 seconds.
  960.  
  961. The table values are in decimal notation.  Leading zero characters are 
  962. optional.
  963.  
  964.  
  965. Table 7-5  Hangup Status Codes
  966.  
  967. |------------------------------------------------------------|
  968. |    Code  |  Cause Description                              |
  969. |----------|-------------------------------------------------|
  970. |     0-9  |  CALL PLACEMENT AND TERMINATION                 |
  971. |----------|-------------------------------------------------|
  972. |       0  |  Normal and proper end of connection            |
  973. |       1  |  Ring Detect without successful handshake       |
  974. |       2  |  Call aborted, from +FK or AN                   |  
  975. |       3  |  No Loop Current                                |
  976. |----------|-------------------------------------------------|
  977. |   10-19  |  TRANSMIT PHASE A & MISCELLANEOUS ERRORS        |
  978. |----------|-------------------------------------------------|
  979. |      10  |  Unspecified Phase A error                      |
  980. |      11  |  No Answer (T.30 T1 timeout)                    |
  981. |----------|-------------------------------------------------|
  982. |   20-39  |  TRANSMIT PHASE B HANGUP CODES                  |
  983. |----------|-------------------------------------------------|
  984. |      20  |  Unspecified Transmit Phase B error             |
  985. |      21  |  Remote cannot receive or send                  |
  986. |      22  |  COMREC error in transmit Phase B               |
  987. |      23  |  COMREC invalid command received                |
  988. |      24  |  RSPEC error                                    |
  989. |      25  |  DCS sent three times without response          |
  990. |      26  |  DIS/DTC received 3 times; DCS not recognized   |
  991. |      27  |  Failure to train at 2400 bps or +FMINSP value  |
  992. |      28  |  RSPREC invalid response received               |
  993. |----------|-------------------------------------------------|
  994. |   40-49  |  TRANSMIT PHASE C HANGUP CODES                  |
  995. |----------|-------------------------------------------------|
  996. |      40  |  Unspecified Transmit Phase C error             |
  997. |      43  |  DTE to DCE data underflow                      |
  998. |----------|-------------------------------------------------|
  999. |   50-69  |  TRANSMIT PHASE D HANGUP CODES                  |
  1000. |----------|-------------------------------------------------|
  1001. |      50  |  Unspecified Transmit Phase D error             |
  1002. |      51  |  RSPREC error                                   |
  1003. |      52  |  No response to MPS repeated 3 times            |
  1004. |      53  |  Invalid response to MPS                        |
  1005. |      54  |  No response to EOP repeated 3 times            |
  1006. |      55  |  Invalid response to EOM                        |
  1007. |      56  |  No response to EOM repeated 3 times            |
  1008. |      57  |  Invalid response to EOM                        |
  1009. |      58  |  Unable to continue after PIN or PIP            |
  1010. |----------|-------------------------------------------------|
  1011. |   70-89  |  RECEIVE PHASE B HANGUP CODES                   |
  1012. |----------|-------------------------------------------------|
  1013. |      70  |  Unspecified Receive Phase B error              |
  1014. |      71  |  RSPREC error                                   | 
  1015. |      72  |  COMREC error                                   |
  1016. |      73  |  T.30 T2 timeout, expected page not received    |
  1017. |      74  |  T.30 T1 timeout after EOM received             |
  1018. |----------|-------------------------------------------------|
  1019. |   90-99  |  RECEIVE PHASE C HANGUP CODES                   |
  1020. |----------|-------------------------------------------------|
  1021. |      90  |  Unspecified Receive Phase C error              |
  1022. |      91  |  Missing EOL after 5 seconds                    |
  1023. |      92  |  Unused code                                    |
  1024. |      93  |  DCE to DTE buffer overflow                     |
  1025. |      94  |  Bad CRC or frame (ECM or BFT modes)            |
  1026. |----------|-------------------------------------------------|
  1027. | 100-119  |  RECEIVE PHASE D HANGUP CODES                   |
  1028. |----------|-------------------------------------------------|
  1029. |     100  |  Unspecified Receive Phase D errors             |
  1030. |     101  |  RSPREC invalid response received               |
  1031. |     102  |  COMREC invalid response received               |
  1032. |     103  |  Unable to continue after PIN or PIP            |
  1033. |----------|-------------------------------------------------|
  1034. | 120-255  |  RESERVED CODES                                 |
  1035. |------------------------------------------------------------|
  1036.  
  1037.  
  1038. 7.5  SERVICE CLASS 2 PARAMETERS
  1039.  
  1040. All Service Class 2 parameters can be read, written, and tested for 
  1041. range of legal values by the DCE.  The general syntax is described in 
  1042. Section 7.1.
  1043.  
  1044. Group 3 FAX devices negotiate session parameters in DIS, DCS, and DTC 
  1045. frames.  The following parameters are provided to condition the 
  1046. facsimile DCE for the capabilities it will offer and to report the 
  1047. session settings negotiated.
  1048.  
  1049. The three primary T.30 session parameters are +FDCC, +FDIS and +FDCS.  
  1050. They are compound parameters, using values listed in Table 7-2.  Figure 
  1051. 70-1 illustrates their relationships.
  1052.  
  1053. 7.5.1  +FDCC, DCE CAPABILITIES PARAMETERS
  1054.  
  1055. Write Syntax:   +FDCC:VR,BR,WD,LN,DF,EC,BF,ST
  1056.  
  1057. Valid values    See Table 7-2
  1058.  
  1059. Default values  0,3,0,2,0,0,0,0  (RC96AC)
  1060.                 0,5,0,2,0,0,0,0  (RC144AC)
  1061.  
  1062. +FDCC allows the DTE to sense and constrain the capabilities of the 
  1063. facsimile DCE from the choices defined in CCITT t.30 Table 2.  When 
  1064. +FDCC is modified by the DTE, the DCE copies +FDCC into +FDIS.
  1065.  
  1066. 7.5.2  +FDIS, CURRENT SESSIONS CAPABILIIES PARAMETERS
  1067.  
  1068. Write Syntax:   +FDIS:VR,BR,WD,LN,DF,EC,BF,ST
  1069.  
  1070. Valid values    See Table 7-2
  1071.  
  1072. Default values  0,3,0,2,0,0,0,0  (RC96AC)
  1073.                 0,5,0,2,0,0,0,0  (RC144AC)
  1074.  
  1075.  
  1076. The +FDIS parameter allows the DTE to sense and constrain the 
  1077. capabilities used for the current session.  The DCE uses +FDIS to 
  1078. generate DIS or DTC messages directly, and uses +FDIS and received DIS 
  1079. messages to generate DCS messages.
  1080.  
  1081. The DCE initializes the +FDIS parameter from the +FDCC parameter on 
  1082. initialization, when +FDCC is written, and at the end of a session.
  1083.  
  1084. 7.5.4  +FLID=, LOCAL ID STRING
  1085.  
  1086. Write Syntax   +FLID="<local ID string>"
  1087.  
  1088. Valid values:   20 character ASCII string
  1089.  
  1090. Default value:  Empty
  1091.  
  1092. If FLID is not a null string, it generates a TSI or CSI frame.  Table 
  1093. 3/T.30 includes digits 0-9, "+" and space.
  1094.  
  1095. If the DCE supports use of Table 3/t.30 only, the response to a +FLID=? 
  1096. command is "<20)(32, 43, 48-57)".  If the DCE supports printable ASCII 
  1097. <, the response is "(20)(32-127)<CRLF>"  The first "(20)" represents 
  1098. string length: the second (character values) field reports supported 
  1099. string values.
  1100.  
  1101. Notes:  1.  The string is saved in RAM.
  1102.         2.  Non-numeric characters are not filtered out.
  1103.  
  1104. 7.5.5  +FCR, CAPABILITY TO RECEIVE
  1105.  
  1106. Write Syntax:  +FCR=<value>
  1107.  
  1108. Valid values:  1,0
  1109.  
  1110. Default values 0
  1111.  
  1112. +FCR=0 indicates that the DCE will not receive message data.  This can 
  1113. be sued when the DTE has insufficient storage.  The DCE can send and can 
  1114. be polled for a file.
  1115.  
  1116. +FCR is sampled in CCITT T.30 Phase A and Phase D
  1117.  
  1118. 7.5.6  +FPTS=, PAGE TRANSFER STATUS
  1119.  
  1120. Write syntax:   +FPTS=<ppr>
  1121.  
  1122. Valid Values:   1,2,3,4,5
  1123.  
  1124. Default value:  0
  1125.  
  1126. 7.5.7  +FCQ, COPY QUALITY CHECKING
  1127.  
  1128. Write Syntax:  +FCQ=<value>
  1129.  
  1130. Valid Values:  0
  1131.  
  1132. Default Value: 0
  1133.  
  1134. This parameter controls Copy Quality checking by a receiving facsimile 
  1135. DCE.
  1136.  
  1137. The DCE returns +FCQ=0 which indicates the DCE does no quality checking.  
  1138. The DCE will generate Copy Quality OK (MCF) responses to complete pages, 
  1139. and set +FPTS=1.
  1140.  
  1141. 7.5.8  +FPHCTO, DTE PHASE C RESPONSE TIME-OUT
  1142.  
  1143. Write Syntax:   +FPHCTO=<value>
  1144.  
  1145. Valid Values:   0-255, 100 millisecond units
  1146.  
  1147. Default Value:  30
  1148.  
  1149. The +FPHCTO command determines how long the DCE will wait for a command 
  1150. after reaching the end of data when transmitting in Phase C.  When this 
  1151. time-out is reached, the DCE assumes there are no more pages and no 
  1152. documents to send.  It then sends the T.30 EOP response to the remote 
  1153. device.
  1154.  
  1155. 7.5.9  +FAXERR, T.30 SESSION ERROR REPORT
  1156.  
  1157. Read Syntax:   +FAXERR=<table value>, read only
  1158.  
  1159. Valid values:  0-255, see table 7-5 for meaning
  1160.  
  1161. This read-only parameter indicates the cause of the hangup.  Table 7-5 
  1162. shows the valid values for this parameter as well as the meaning of the 
  1163. each value.  +FAXERR is set by the DCE at the conclusion of a fax 
  1164. session.  The DCE resets +FAXERR to 0 at the beginning of Phase A off-
  1165. hook time.
  1166.  
  1167. 7.5.10  +FBOR, DATA BIT ORDER
  1168.  
  1169. Write Syntax:  +FBOR=<value>
  1170.  
  1171. Valid Values:  0,1
  1172.  
  1173. Default value:  0
  1174.  
  1175. This parameter controls the mapping between PSTN facsimile data and the 
  1176. DTE-DCE link.  There are two choices:
  1177.  
  1178. DIRECT:  The first bit transferred to each byte on the DTE-DCE link is 
  1179. the first bit transferred on the PSTN data carrier.
  1180.  
  1181. REVERSED:  The last bit transferred of each byte on the DTE-DCE link is 
  1182. the first bit transferred on the PSTN data carrier.
  1183.  
  1184. There are two data types to control:
  1185.  
  1186. This command controls Phase C data (T.4 encoded data) transferred during 
  1187. execution of +FDT or +FDR commands.
  1188.  
  1189. The following two codes are supported.
  1190.  
  1191.   +FBOR=0  selects direct bit order for Phase C data
  1192.   
  1193.   +FBOR=1  selects reversed bit order for Phase C data
  1194.  
  1195. Note that this parameter does not affect the bit order of control 
  1196. characters generated by the DCE.
  1197.  
  1198. 7.5.11  +FAA, ANSWER PARAMETER
  1199.  
  1200. Write syntax:  +FAA=<value>
  1201.  
  1202. Valid values:   0,1
  1203.  
  1204. Default value   0
  1205.  
  1206.    +FAA=0   constrains the DCE to answer as set by +FCLASS
  1207.  
  1208.    +FAA=1   indicates that the DCE can answer and automatically 
  1209. determine whether to answer as a Class 2 facsimile DCE or as a data 
  1210. modem.  If the DCE automatically switches, if modifies FCLASS 
  1211. appropriately.
  1212.  
  1213. Class 2 adaptive answer is implemented as follows:
  1214.  
  1215. First, a data mode handshake is attempted.  If the DCE has been 
  1216. configured for automode detection (using the A command), the DCE may try 
  1217. several protocols be terminating attempts to make a data mode 
  1218. connection.  This can take as long as 6-8 seconds.
  1219.  
  1220. If the data mode connection attempt fails, a facsimile Class 2 
  1221. connection is assumed.  When a connection is made, a result of the 
  1222. adaptive answer, the DCE issues the D or FAX result code before the 
  1223. CONNECT or +FCC message to inform the DTE of the connection type.  A 
  1224. making a class 2 connection, the DCE stays on-line rather than going 
  1225. into the command mode as with a Class 2 connection.
  1226.  
  1227. 7.5.12  +FBUF?, BUFFER SIZE
  1228.  
  1229. Read syntax:   +FBUF?
  1230.  
  1231. DCE response syntax <bs>,<xoft>,<xont>,<bc> where:
  1232.  
  1233.   <bs> = total buffer size
  1234.   <xoft> = XOFF threshold
  1235.   <xcont> = XON threshold
  1236.   <bc> = current buffer byte count
  1237.  
  1238. The +FBUF parameter allows the DTE to determine the characteristics of 
  1239. the DCE's data buffer.  Data buffers are used for flow control.  Use of 
  1240. the reported values allow the DTE to transfer data without provoking 
  1241. XOFF.
  1242.  
  1243.  
  1244. 7.6  EXAMPLE SESSIONS
  1245.  
  1246. Table 7-6 and 7-7 show the typical command and responses for sending and 
  1247. receiving two pages respectively.
  1248.  
  1249.               Table 7-6 Send two pages, 1-D data, no errors
  1250. |----------------------------------------------------------------------|
  1251. | DTE COMMAND | DCE RESPONSE | LOCAL DTE ACTION |REMOTE STATION ACTION |
  1252. |-------------|--------------|------------------|----------------------|
  1253. | AT+FCLASS=2 | OK           | Set Class 2      |                      |
  1254. |-------------|--------------|------------------|----------------------|
  1255. | AT+FLID=    |              |                  |                      |
  1256. | <local id>  | OK           | Set local ID     |                      |
  1257. |-------------|--------------|------------------|----------------------|
  1258. | AT<dial str>|              | off hook, dial   | answer               |
  1259. |             |              | send CNG         | send [CED],          |
  1260. |             | +FCON        | detect flags     | v.21 flags           |
  1261. |             | +FDIS:<csi>  | get CSI          | CSI                  |
  1262. |             | +FDIS:<codes>| get DIS          | DIS                  |
  1263. |             | OK           |                  |                      |
  1264. |-------------|--------------|------------------|----------------------|
  1265. | AT+FDT      |              | send TSI         | get TSI              |
  1266. |             |              | send DCS         | get DCS              |
  1267. |             |              | send TCF         | get TCF              |
  1268. |             | +FDCS:<codes>| get CFR          | send CFR             |
  1269. |             | CONNECT      | send carrier     | receive carrier      |
  1270. |             | <XON>        |                  |                      |
  1271. | <1st page>  |              | send page data   | receive page data    |
  1272. | <DLE><ETX>  | OK           |                  |                      |
  1273. |-------------|--------------|------------------|----------------------|
  1274. | AT+FET=0    |              | send RTC         | get RTC              |
  1275. |             |              | get MPS          | send MPS             |
  1276. |             | +FPTS:1      | get MCF          | send MCF             |
  1277. |             | OK           |                  |                      |
  1278. |-------------|--------------|------------------|----------------------|
  1279. | AT+FDT      | CONNECT      | send carrier     | receive carrier      |
  1280. |             | <XON>        |                  |                      |
  1281. | <2nd page>  |              | send page data   | receive page data    |
  1282. | <DLE><ETX>  | OK           |                  |                      |
  1283. |-------------|--------------|------------------|----------------------|
  1284. | AT+FET=2    |              | send RTC         | get RTC              |
  1285. |             |              | send EOP         | get EOP              |
  1286. |             | +FPTS:1      | get MCF          | send MCF             |
  1287. |             | +FHNG:0      | send DCN         | get DCN              |
  1288. |             | OK           | hangup           | hangup               |
  1289. |-------------|--------------|------------------|----------------------|
  1290.  
  1291.  
  1292.               Table 7-7 Receive two pages, 1-D data, no errors
  1293. |----------------------------------------------------------------------|
  1294. | DTE COMMAND | DCE RESPONSE | LOCAL DTE ACTION |REMOTE STATION ACTION |
  1295. |-------------|--------------|------------------|----------------------|
  1296. | AT+FCR=1    | OK           | Enable reception |                      |
  1297. |-------------|--------------|------------------|----------------------|
  1298. | AT+FLID=    |              |                  |                      |
  1299. | <local id>  | OK           | Set local ID     |                      |
  1300. |-------------|--------------|------------------|----------------------|
  1301. |             | RING    <-   | detect ring  <-  | Dials[, send CNG]    |
  1302. |-------------|--------------|------------------|----------------------|
  1303. | ATA         |              | off hook         |                      |
  1304. |             |              | send CED         | get CED              |
  1305. |             |              | send CSI         | get CSI              |
  1306. |             |              | send DIS         | get DIS              |
  1307. |             | +FCON        | detect flags     | send v.21 flags      |
  1308. |             |[+FTSI:"<tsi>"] [get TSI]        | [send TSI]           |
  1309. |             | +FDCS:<codes>| get DCS          | send DCS             |
  1310. |             | OK           | begin TCF receive| start TCF            |
  1311. |-------------|--------------|------------------|----------------------|
  1312. | AT+FDR      |              | accept TCF       | finish TCF           |
  1313. |             | +FCFR        | send CFR         | get CFR              |
  1314. |             |[+FDCS:<codes>]                  |                      |
  1315. |             | CONNECT      | get page carrier | send page carrier    |
  1316. | <DC2>       |              | get page data    | send page data       |
  1317. |             |<page data stream>               |                      |
  1318. |             | <DLE><ETX> <-| detect RTC   <-  | send RTC             |
  1319. |             | +FPTS:1,<lc> |                  | drop carrier         |
  1320. |             | +FET:0    <- | get MPS       <- | send MPS             |
  1321. |             | OK           |                  |                      |
  1322. |-------------|--------------|------------------|----------------------|
  1323. | AT+FDR      |              | send MCF         | get MCF              |
  1324. |             | CONNECT      | get page carrier | send page carrier    |
  1325. | <DC2>       |              | get page data    | send page data       |
  1326. |             |<page data stream>               |                      |
  1327. |             | <DLE><ETX> <-| detect RTC   <-  | send RTC             |
  1328. |             | +FPTS:1,<lc> |                  | drop carrier         |
  1329. |             | +FET:2    <- | get EOP       <- | send EOP             |
  1330. |             | OK           |                  |                      |
  1331. |-------------|--------------|------------------|----------------------|
  1332. | AT+FDR      |              | send MCF         | get MCF              |
  1333. |             | +FHNG:0   <- | get DCN       <- | send DCN             |
  1334. |             | OK           | hangup           | hangup               |
  1335. |-------------|--------------|------------------|----------------------|
  1336.  
  1337.  
  1338.